home *** CD-ROM | disk | FTP | other *** search
/ Macromedia Multimedia Showcase 6.0 / Macromedia Multimedia Showcase v6.0 WIN-MAC (XMSH60CD)(Macromedia, Inc.)(1996).iso / pc / demosoft / freehand / data.5 / App / Usenglsh / lang8.dll / POST / 1233 < prev    next >
Text File  |  1996-10-03  |  3KB  |  140 lines

  1. /makepattern defed /xt xdf
  2. xt not {/yt save def} if
  3. /PATmp{
  4. exch                             
  5. dup length 3 add dict copy        
  6. begin
  7. currentdict /Multi known not {/Multi 1 def} if
  8. Multi 1 ne {
  9. /UserProc /PaintProc load def
  10. /PaintProc {
  11. begin
  12. 0 1 Multi 1 sub {
  13. PaintColors 1 index get PATsc
  14. PaintData exch get
  15. gsave currentdict UserProc grestore
  16. }for
  17. end
  18. } bdf
  19. } if
  20. currentdict
  21. end
  22. exch makepattern
  23. }bdf
  24. /PATsp{
  25. dup /PaintType get 2 eq
  26. {
  27. exch aload length 4 eq
  28. {5 -1 roll}
  29. {spots exch get 0 4 getinterval aload pop
  30. 4 {4 index mul 4 1 roll} repeat 6 -2 roll pop}ifelse
  31. [/Pattern /DeviceCMYK] setcolorspace
  32. }if
  33. setpattern
  34. }bdf
  35. /PATfill{{{eofill}fp}{{fill}fp}ifelse}bdf
  36. /PATprestroke{}bdf
  37. /PATstroke{stroke}bdf
  38. xt not {yt restore} if
  39. xt {/yt save def} if
  40. /PATtcalc{
  41. gsave
  42. exch concat                    
  43. matrix currentmatrix exch    
  44. 2 ne {
  45. dup 4 get exch dup 5 get exch
  46. XStep 0 dtransform round exch round exch
  47. XStep div exch XStep div exch
  48. 0 YStep dtransform round exch round exch
  49. YStep div exch YStep div exch
  50. 7 -3 roll astore
  51. } if
  52. grestore
  53. }bdf
  54. /PATmp{
  55. exch                 
  56. dup                 
  57. length 8 add        
  58. dict copy            
  59. begin                
  60. TilingType PATtcalc 
  61. /PATcurrentMtx xdf    
  62. currentdict /Multi known not {/Multi 1 def} if
  63. /FontType 3 def
  64. /Encoding 256 array def
  65. 3 string 0 1 255
  66. {Encoding exch dup 3 index cvs cvn put} for pop
  67. /FontMatrix matrix def
  68. /FontBBox BBox def
  69. /BuildChar {
  70. mark 3 1 roll
  71. exch begin
  72. Multi 1 ne {PaintData exch get}{pop}ifelse
  73. PaintType 2 eq Multi 1 ne or
  74. {XStep 0 FontBBox aload pop setcachedevice}
  75. {XStep 0 setcharwidth}ifelse
  76. currentdict        
  77. /PaintProc load    
  78. end
  79. gsave exec grestore
  80. cleartomark
  81. }bdf
  82. currentdict    
  83. end
  84. /foo exch
  85. definefont
  86. }bdf
  87. /PATsp{
  88. /PATcurrent xdf
  89. PATcurrent /PaintType get 2 eq
  90. {/PATcolor xdf}if
  91. }bdf
  92. /PATpcalc{
  93. PATcurrent begin
  94. gsave
  95. PATcurrentMtx setmatrix
  96. BBox aload pop pop pop translate
  97. pathbbox
  98. grestore
  99. YStep div ceiling 4 1 roll
  100. XStep div ceiling 4 1 roll
  101. YStep div floor 4 1 roll
  102. XStep div floor 4 1 roll
  103. 2 index sub cvi abs
  104. exch 3 index sub cvi abs exch
  105. 4 2 roll
  106. YStep mul exch XStep mul exch
  107. end
  108. }bdf
  109. /PATfill{
  110. {{eoclip}fp}{{clip}fp}ifelse
  111. PATpcalc                
  112. newpath
  113. PATcurrent dup begin
  114. setfont
  115. PATcurrentMtx setmatrix
  116. PaintType 2 eq {PATcolor vc} if
  117. 3 index string            
  118. 0 1 Multi 1 sub {        
  119. 3 index 3 index moveto
  120. Multi 1 ne {dup PaintColors exch get vc} if
  121. 0 1 7 index 1 sub {    
  122. 2 index         
  123. exch             
  124. 2 index put
  125. } for
  126. pop                    
  127. 3 index                
  128. {
  129. currentpoint    
  130. 2 index show
  131. YStep add moveto
  132. }repeat
  133. }for
  134. 5 {pop} repeat
  135. end
  136. }bdf
  137. /PATprestroke{{strokepath}fp}bdf
  138. /PATstroke{false PATfill}bdf
  139. xt {yt restore} if